package com.ruoyi.recycle.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 物流支出统计对象 logistics_expenditure_statistics
 *
 * @author Wubk
 * @date 2022-05-22
 */
@Data
public class LogisticsExpenditureStatistics implements Serializable {
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private String logisticsNumber;

    /** 订单类型 */
    @Excel(name = "订单类型")
    private String logisticsType;

    /** 收货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date consignTime;

    /** 重量 */
    @Excel(name = "重量")
    private BigDecimal weight;

    /** 包裹体积 */
    @Excel(name = "包裹体积")
    @ApiModelProperty(name = "volume", value = "包裹体积")
    private BigDecimal volume;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal money;

    /** 物流公司 */
    @Excel(name = "物流公司")
    private String logisticsCompany;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private String logisticsStatus;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    /** 更新人 */
    @Excel(name = "更新人")
    private String updatedBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedTime;

    /** 订单编号 */
    @Excel(name = "快递单号")
    private String kuaidinum;

    /** 物流订单ID */
    @Excel(name = "物流订单ID")
    private String orderId;
    /** 物流任务号 */
    @Excel(name = "物流任务号")
    private String taskId;
    /** 快递员 */
    @Excel(name = "快递员")
    private String courier;
    /** 快递员联系方式 */
    @Excel(name = "快递员联系方式")
    private String courierPhone;
    /** 备注 */
    //@Excel(name = "备注")
    @ApiModelProperty(name = "remark", value = "备注")
    private String remark;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("logisticsNumber", getLogisticsNumber())
            .append("logisticsType", getLogisticsType())
            .append("consignTime", getConsignTime())
            .append("weight", getWeight())
            .append("money", getMoney())
            .append("volume", getVolume())
            .append("logisticsCompany", getLogisticsCompany())
            .append("logisticsStatus", getLogisticsStatus())
            .append("createdBy", getCreatedBy())
            .append("createdTime", getCreatedTime())
            .append("updatedBy", getUpdatedBy())
            .append("updatedTime", getUpdatedTime())
            .append("kuaidinum", getKuaidinum())
            .toString();
    }
}
